package com.ict.web.service;



import com.baomidou.mybatisplus.extension.service.IService;
import com.ict.web.domain.Performance;
import com.ict.web.domain.PerformanceIndicators;
import com.ict.web.dto.InsertPerformanceDto;
import com.ict.web.dto.QueryPerformanceDto;
import com.ict.web.dto.UpdatePerformanceDto;
import com.ict.web.vo.PerformanceDetailVo;
import com.ict.web.vo.PerformanceListVo;

import java.util.List;

/**
 * 绩效Service接口
 *
 * @author ruoyi
 * @date 2022-02-15
 */
public interface IPerformanceService extends IService<Performance>
{
    /**
     * 查询绩效
     *
     * @param perId 绩效主键
     * @return 绩效
     */
    public PerformanceDetailVo selectPerformanceByPerId(Long perId);

    /**
     * 查询绩效列表
     *
     * @param queryDto 绩效
     * @return 绩效集合
     */
    public List<PerformanceListVo> selectPerformanceList(QueryPerformanceDto queryDto);

    /**
     * 新增绩效
     *
     * @param addDto 绩效
     * @return 结果
     */
    public String insertPerformance(InsertPerformanceDto addDto);

    /**
     * 修改绩效
     *
     * @param updateDto 绩效
     * @return 结果
     */
    public void updatePerformance(Long perId,UpdatePerformanceDto updateDto);

    /**
     * 绩效启用
     * @param perId
     */
    public void enable(Long perId);

    /**
     * 绩效停用
     * @param perId
     */
    public void disContinue(Long perId);

    /**
     * 删除绩效信息
     *
     * @param perId 绩效主键
     * @return 结果
     */
    public int deletePerformanceByPerId(Long perId);

    /**
     * 查询有效的绩效规则
     *
     * @return 绩效规则
     */
    public List<PerformanceIndicators> selectValidPerformanceRule();
}
